Serial communication over communication control pin

ABSTRACT

Methods and apparatus, including computer program products, are provided for serial communications over a communications control pin. The method may include detecting, by a first device including a data interface, a current flow at a first communication control pin at the data interface; and assigning, by the first device based on the detection of the current flow at the first communication control pin, serial data communication circuitry to a second communication control pin at the data interface to carry serial data communications to another device. Related apparatus, systems, methods, and articles are also described.

FIELD

The subject matter described herein relates to connectors includingdevices used with for example the Universal Serial Bus (USB).

BACKGROUND

Physical connectors, such as the connector used with the UniversalSerial Bus (USB), can be used to couple devices. USB standards definephysical and electrical aspects of USB. Examples of those standardsinclude Universal Serial Bus 3.1 Specification, Universal Serial Bus 3.0Specification, and any additions, revisions, and updates thereto.

SUMMARY

Methods and apparatus, including computer program products, are providedfor serial communications over a communications control pin.

In some example embodiments, there may be provided a method. The methodmay include detecting, by a first device including a data interface, acurrent flow at a first communication control pin at the data interface;and assigning, by the first device based on the detection of the currentflow at the first communication control pin, serial data communicationcircuitry to a second communication control pin at the data interface tocarry serial data communications to another device.

In some variations, one or more of the features disclosed hereinincluding the following features can optionally be included in anyfeasible combination. The data interface may include at least one of auniversal serial bus connector and a universal serial bus receptacle.The first communication control pin and the second communication controlpin may be coupled to at least pull-down resistor and a ground. Thefirst communication control pin may be coupled to the other deviceincluding a pull-up resistor causing the current flow when coupled. Thefirst communication control pin may be located at a first row of thedata interface, and wherein the second communication control pin may belocated at a second row of the data interface. The detecting may furtherinclude identifying the first communication control pin as activelycarrying communication control signaling. The assigning may furtherinclude selecting the second communication control pin that is notactively carrying communication control signaling to carry the serialdata. The first device may detect a current flow at the secondcommunication control pin and assigning, based on the detection of thecurrent flow at the second communication control pin, the serial datacommunication circuitry to the first communication control pin to carryserial data communications to the other device.

Moreover, there may be provided, in some example embodiments, a method.The method may include detecting, by a device including a data interfacehaving a first communication control pin and a second communicationcontrol pin, a current flow at the first communication control pin, thecurrent flow caused by at least a pull-up resistor; and communicating,by the device when the current flow is detected at the firstcommunications pin, serial data via the second communication control pinat the data interface.

In some variations, one or more of the features disclosed hereinincluding the following features can optionally be included in anyfeasible combination. The data interface may include at least one of auniversal serial bus connector and a universal serial bus receptacle.The first communication control pin may be coupled to the other deviceincluding a pull-down resistor causing the current flow when coupled.The first communication control pin may be located at a first row of thedata interface, and the second communication control pin may be locatedat a second row of the data interface.

The above-noted aspects and features may be implemented in systems,apparatus, methods, and/or articles depending on the desiredconfiguration. The details of one or more variations of the subjectmatter described herein are set forth in the accompanying drawings andthe description below. Features and advantages of the subject matterdescribed herein will be apparent from the description and drawings, andfrom the claims.

DESCRIPTION OF THE DRAWINGS

In the drawings,

FIG. 1 depicts an example of a data connector;

FIG. 2 depicts an example of a system 200 configured to use acommunication control pin of a data connector for serial communications,in accordance with some exemplary embodiments;

FIG. 3 depicts an example of a system 300 including a charger and a hostconfigured to use a communication control pin of a data connector forserial communications, in accordance with some exemplary embodiments;

FIG. 4 depicts an example of a process 400 for detecting an activecommunication control pin and assigning another communication controlpin to carry serial data communications, in accordance with some exampleembodiments; and

FIG. 5 depicts an example of an apparatus, in accordance with someexample embodiments.

Like labels are used to refer to same or similar items in the drawings.

DETAILED DESCRIPTION

An example of a data connector is depicted in FIG. 1. The connector maycomprise a single, small-sized data connector that can be swapped, sothat an end-user does not need to be concerned with the whether theconnectors is connected to a host or a slave device or in which way theplug is inserted to the receptacle. The connector may be configured as auniversal serial bus (USB) connector, so that either of for example thetwo USB 3.0 buses can be used to couple to a host device or a slavedevice. Moreover, the connector can be rotated or twisted. This differsfrom prior USB connectors having physically different host connectorsand slave connectors. The detection of a host or a slave may beperformed using Communication Control (CC) signals carried by CC pins orlines. These CC signals may also be used to detect the orientation ordirection of the USB connector. The connector (for example, male plugs)may have two CC pins 102 and 104, one in the upper row of the connector100 and one in the lower row of the connector 100 as shown in FIG. 1.Although both CC pins 102 and 104 can be present, in standard cablesonly a single CC pin at connector 100 may be connected and wired throughthe cable and coupled to another device. In accessories with captivecables or directly attached accessories, only one CC-pin may be used fornormal CC-detection.

In some example embodiments, the subject matter disclosed herein mayrelate to detecting which one of the CC pins 102 and 104 is connectedand wired through to carry USB communications control (CC) informationincluding communications, signaling, and/or the like. Moreover, once aCC pin is detected, the other unused CC pin may be assigned to carryserial data communications and the like. To illustrate, after a USBconnection is made, one of the CC pins 102 may be used for communicationcontrol (CC), and the other pin 104 may be re-purposed so that pin 104can used for simple serial communication between USB devices.

Rather than use two CC pins to detect the orientation of connector 100,a single CC pin may be used and its orientation detected in for exampleframeworks where a single connection occurs via a captive cable or viaaccessory attachment directly to a receptacle of a USB-device. Once theactive CC pin is detected, the other CC pin (which is not being used forCC) may be re-purposed by for example assigning the other CC pin tocarry serial data communication and the like. The active CC-pin may beused to identify a slave/host connection with voltage level changes andmay carry Power Delivery (PD) type of communications.

FIG. 2 depicts an example of a system 200 including a first device 205having a USB connector 100, such as a male plug, and a second device 270having a USB connector 272, such as a female receptacle.

The first and second connectors 100 and 272 may be USB connectors (forexample, a male plug or a female receptacle) having two rows. The first,top row may include a ground pin (GND), a transmit pin (TX1+), atransmit pin (TX1−), a CC1 pin 102, a D+ pin, a D− pin, and so forththrough VBUS pin 296. The bottom row may include a VBUS pin, a receivepin (RX1+), a receive pin (RX1−), and so forth including a CC2 pin 104.Connector 100 is configured so that if the connector is rotated by 180degrees, the former bottom row (which is rotated to the top row) iscompatible with the required pins for the top row.

Although FIGS. 1 and 2 depicts a specific configuration of pins forconnectors 100 and 272, other pin configurations may be used as well.

Although some of the examples described herein may refer to USB, USB3.0, and the like, the subject matter disclosed herein may be used withother types of connectors as well.

In the example of FIG. 2, USB connector 100 may include two CC pins(labeled CC1 102 and CC2 104), a serial data path 208, a source of power(labeled VBUS power source 210), and detection and control circuitry 212configured to detect which of the two CC pins 102 and 104 carries CCsignals.

The second device 270 further includes a USB connector 272, which hasthe same or similar configuration as connector 100. Connector 272 mayalso include two CC pins 274 and 276, a serial data path 278, a sourceof power (labeled VBUS power source 280), and a detection and controlcircuitry 282.

Detection and control circuitry 212 may be configured to detect which ofthe two CC pins 102 and 104 carries CC signals. Moreover, detection andcontrol circuitry 212 may be configured to re-purpose the un-used CC pinto carry data after the CC detection process. Detection and controlcircuitry 212 may also control application of data 208 to CC pin 104.For example, detection and control circuitry 212 may couple data 208 toCC pin 104 on, or after, a valid connection of CC pin 102 is detected atdevice 270.

According to some embodiments, CC pin 102 may be dedicated to carry CCsignals, and CC pin 104 may be dedicated to carrying serial data. As anexample, communication control functionality and serial datafunctionality may be pre-allocated to pins 102 and 104, respectively.Therefore, detection and control circuitry may not need to detect, whichof the two CC pins 102 and 104 carries CC signals

At device 205, CC pin 102 may be pulled high. In the example of FIG. 2,CC1 pin 102 is pulled high as shown by the coupling to the VBUS powersource 210. The phrase “pull up” refers to applying a voltage to a pin,usually through a pull up resistor. In the example of FIG. 2, the CC2pin 104 is not pulled high but rather connected to a communication path,such as serial data path 208.

Although FIG. 2 depicts a unidirectional data path between 278 and 208,the data path may be unidirectional in the other direction and/orbi-directional as well.

At device 270, both pins 274 and 276 may be pulled down. The pull downrefers to applying a voltage (for example, a low voltage, ground, andthe like) to a pin usually through a pull down resistor. In the exampleof FIG. 2, only a single CC pin 102 is connected through connector 274(but not CC pin 276), so only that single CC pin 102 and coupled CC pin274 changes voltage due to the pull up and/or pull down. For example,when CC pin 274 and CC pin 102 are coupled, current will flow from 210,102, 283, 274, and 286, which can be detected by connection detector282. This makes it possible to detect the polarity of the connectors 100and 272 at the host device 205 and the slave device 270, although atdevice 205 the polarity may be known when the plug is integral/directlyattached to device 205 or its cable is a captive cable. If plug 100 isinserted into receptacle 272 the other way around (for example, in atwisted orientation), the current will flow from 102 to 276 and pullup/pull down would be detected on the CC2 input of 282. The other CCpins 104 and 276 may be left unused at host device 205 and the slavedevice 270, although the unused CC pins can be re-purposed (given aconnection) by for example assigning the other pins to carry data asdisclosed herein.

In some example embodiments, device 205 including detection and controlcircuitry 212 may first detect the orientation of connector 100 bydetecting a change associated with the pull up at CC pin 102. Forexample, the value of CC1 may be pulled to the value of VBUS 210. Butwhen connector 272 is connected to connector 100, pins CC1 274 and CC2276 (both of them pulled low as shown by the connection to ground viaresistors Rd) will cause a change. This change may be a current draw,voltage change, and/or the like, and this change may be detected bydetection and control circuitry 212. For example, the change may causecurrent to flow from 214, 102, 274, 283, 286, and the like, which can bedetected by detection and control circuitry 212.

In some example embodiments, once this detection occurs and thusidentity of the active CC pin is detected, device 205 may re-purpose theother pin, such as CC2 pin 104. The re-purposing may include using theCC2 pin to carry data, such as power delivery negotiation communicationsand any other information.

The device 270 may, as noted, pull down pin CC1 274 and CC2 276 as shownby the connection to ground via resistors Rd. The connection detectionand control circuitry 282 may detect which of CC pins 274 and 276carries CC signaling by detecting for example a current change resultingfrom the coupling with connector 100. The connection detection andcontrol circuitry 282 may generate a signal 284 to re-purpose the unusedpin. For example, the signal 284 may assign data communication to the CCpin not actively being used for CC. Referring to FIG. 2, when CC pin 274couples to CC pin 102, connection detection and control circuitry 282may detect a change (for example, a current flow) at 286, and determinethat pin 274 is the active CC pin carrying CC signaling. Next,connection detection and control circuitry 282 may issue a controlsignal 284 to allow data communication 278 to be carried by inactive CCpin 276 coupled to pin 104 and serial data 208.

To further illustrate, device 205 may be implemented as an accessorythat can be a USB host and/or a USB slave. Accessory device 205 may haveeither a captive cable (as in the case of a charger) or a connector (forexample, receptacle or plug) built in to accessory device 205 (as in adocking station and the like). This accessory device 205 may alsoinclude only a single CC pin 102 assigned to carry CC signaling andfurther include CC connection detection circuitry 212 with pull up/pulldown detection. The other CC pin, such as pin 104, can be re-purposed,as noted, for use as a data path, such as serial data path 208, whichcan be unidirectional or bidirectional. As such, accessory device 205may know its configuration with respect to the CC pin 102 and data path104.

The other device 270 may be implemented as a mobile device (acting as aUSB host, USB slave, or both) to which the accessory 205 is connected.The detection circuitry 282 may detect a change (due to the pull up ordown) at one of the CC pins 274 or 276. The change enable device 270 todetermine the active CC pin being used by accessory device 205. In theexample of FIG. 2, the active CC pin being used by accessory device 205is CC pin 102. In the example of FIG. 2, the unused CC pin 104/276 canbe disconnected from CC communications and/or re-repurposed for otheruses, such as serial communication between the device and accessory.

FIG. 3 depicts another example of system 300 including a device 305,such as a charger having a captive cable through which power can beprovided to device 270 (labeled slave device).

In the example of FIG. 3, the charger 305 may be coupled to slave device270. When charger 305 couples to device 270, the pull up at CC pin 102will pull up either CC pin 274 or CC pin 276. For example, in theorientation shown at FIG. 3, CC pin 274 would be affected by the pull upat pin 102. This may be detected by detector 282, as noted. If however,the orientation of connector 100 is rotated by 180 degrees, CC pin 276would be affected by the pull up at pin 102. In either case, slavedevice detect the orientation of the connector 100 including thelocation of the active CC pin. In the example of FIG. 3, when detector212 detects the change (for example, a current flow), the detector 282may connect the VBUS 210 (for example, detector 212 may switch Q1 on oroff) to pin 296. USB communications with shorted D+/D− pins may proceed,and the charger can be detected by the slave 270. Next, the slave 270may switch at 278 to couple serial data to the inactive/unused CC pin,which in the example of FIG. 3 corresponds to CC pin 276, which isfurther coupled to CC pin 104 and the like. For example, the serial datacarried by CC pin 276 may request charger 305 to provide a highercharging voltage.

FIG. 4 depicts an example of a process for detecting an activecommunication control pin and assigning another communication controlpin to carry serial data communications, in accordance with some exampleembodiments. The description of FIG. 4 also refers to FIG. 2.

At 405, a first device may be coupled to a second device, in accordancewith some example embodiments. For example, device 205 may have only asingle CC1 line active and coupled at 102 to connector 100 and a secondCC2 pin 104 coupled to serial data. This connector 100 may be coupled toconnector 272 at device 270. The coupling may be direct, such asconnector 100 plugging into 272 directly or indirectly via cables and/ormating receptacles.

At 410, a change in state associated with one of the CC lines may bedetected, in accordance with some example embodiments. For example,device 270 may detect a current flow 286 associated with CC1 102 (whichhas been pulled up via resistor, Rp, and VBUS source 210) and the pulldown of CC1 276 via resistor, Rd, and ground. This current flow may bedetected by circuitry 282 and used to determine the orientation ofconnector 100 and the location of the CC1 pin 102/274. These CC1 pins102/274 may then be used, at 415, for communications control over theUSB bus. The CC-pin(s) may be used to detect that something is pluggedin and used to distinguishing which side is the host device 205 andwhich side is the slave device 270, after which normal USB communicationor charging begin.

At 420, the unused CC pin, such as pins 104/276 at the FIG. 2 example,may be re-purposed to carry for example data communications, inaccordance with some example embodiments. For example, circuitry 282 maysend a control signal 284 to select which CC pin 274 or 276 is not beingused for CC purposes. In the example of FIG. 2, the control signal 284select CC pin 276, which allows device 270 to receive data 208 fromdevice 205.

FIG. 5 illustrates a block diagram of an apparatus 10, which can beconfigured as user equipment, in accordance with some exampleembodiments. The apparatus 10 may further include a USB interface 64A,which may include one or more of the aspects described with respect toFIG. 4 and the like, such as the orientation detection and controlcircuitry, re-purposing of CC pins, and the like.

The apparatus 10 may include at least one antenna 12 in communicationwith a transmitter 14 and a receiver 16. Alternatively transmit andreceive antennas may be separate.

The apparatus 10 may also include a processor 20 configured to providesignals to and receive signals from the transmitter and receiver,respectively, and to control the functioning of the apparatus. Processor20 may be configured to control the functioning of the transmitter andreceiver by effecting control signaling via electrical leads to thetransmitter and receiver. Likewise processor 20 may be configured tocontrol other elements of apparatus 10 by effecting control signalingvia electrical leads connecting processor 20 to the other elements, suchas for example a display or a memory. The processor 20 may, for example,be embodied in a variety of ways including circuitry, at least oneprocessing core, one or more microprocessors with accompanying digitalsignal processor(s), one or more processor(s) without an accompanyingdigital signal processor, one or more coprocessors, one or moremulti-core processors, one or more controllers, processing circuitry,one or more computers, various other processing elements includingintegrated circuits (for example, an application specific integratedcircuit (ASIC), a field programmable gate array (FPGA), and/or thelike), or some combination thereof. Apparatus 10 may include a locationprocessor and/or an interface to obtain location information, such aspositioning and/or navigation information. Accordingly, althoughillustrated in FIG. 3 as a single processor, in some example embodimentsthe processor 20 may comprise a plurality of processors or processingcores.

Signals sent and received by the processor 20 may include signalinginformation in accordance with an air interface standard of anapplicable cellular system, and/or any number of different wireline orwireless networking techniques, comprising but not limited to Wi-Fi,wireless local access network (WLAN) techniques, such as for example,Institute of Electrical and Electronics Engineers (IEEE) 802.11, 802.16,and/or the like. In addition, these signals may include speech data,user generated data, user requested data, and/or the like.

The apparatus 10 may be capable of operating with one or more airinterface standards, communication protocols, modulation types, accesstypes, and/or the like. For example, the apparatus 10 and/or a cellularmodem therein may be capable of operating in accordance with variousfirst generation (1G) communication protocols, second generation (2G or2.5G) communication protocols, third-generation (3G) communicationprotocols, fourth-generation (4G) communication protocols, InternetProtocol Multimedia Subsystem (IMS) communication protocols (forexample, session initiation protocol (SIP) and/or the like. For example,the apparatus 10 may be capable of operating in accordance with 2Gwireless communication protocols IS-136, Time Division Multiple AccessTDMA, Global System for Mobile communications, GSM, IS-95, Code DivisionMultiple Access, CDMA, and/or the like. In addition, for example, theapparatus 10 may be capable of operating in accordance with 2.5Gwireless communication protocols General Packet Radio Service (GPRS),Enhanced Data GSM Environment (EDGE), and/or the like. Further, forexample, the apparatus 10 may be capable of operating in accordance with3G wireless communication protocols, such as for example, UniversalMobile Telecommunications System (UMTS), Code Division Multiple Access2000 (CDMA2000), Wideband Code Division Multiple Access (WCDMA), TimeDivision-Synchronous Code Division Multiple Access (TD-SCDMA), and/orthe like. The apparatus 10 may be additionally capable of operating inaccordance with 3.9G wireless communication protocols, such as forexample, Long Term Evolution (LTE), Evolved Universal Terrestrial RadioAccess Network (E-UTRAN), and/or the like. Additionally, for example,the apparatus 10 may be capable of operating in accordance with 4Gwireless communication protocols, such as for example LTE Advancedand/or the like as well as similar wireless communication protocols thatmay be subsequently developed.

It is understood that the processor 20 may include circuitry forimplementing audio/video and logic functions of apparatus 10. Forexample, the processor 20 may comprise a digital signal processordevice, a microprocessor device, an analog-to-digital converter, adigital-to-analog converter, and/or the like. Control and signalprocessing functions of the apparatus 10 may be allocated between thesedevices according to their respective capabilities. The processor 20 mayadditionally comprise an internal voice coder (VC) 20 a, an internaldata modem (DM) 20 b, and/or the like. Further, the processor 20 mayinclude functionality to operate one or more software programs, whichmay be stored in memory. In general, processor 20 and stored softwareinstructions may be configured to cause apparatus 10 to perform actions.For example, processor 20 may be capable of operating a connectivityprogram, such as for example, a web browser. The connectivity programmay allow the apparatus 10 to transmit and receive web content, such asfor example location-based content, according to a protocol, such as forexample, wireless application protocol, WAP, hypertext transferprotocol, HTTP, and/or the like.

Apparatus 10 may also comprise a user interface including, for example,an earphone or speaker 24, a ringer 22, a microphone 26, a display 28, auser input interface, and/or the like, which may be operationallycoupled to the processor 20. The display 28 may, as noted above, includea touch sensitive display, where a user may touch and/or gesture to makeselections, enter values, and/or the like. The processor 20 may alsoinclude user interface circuitry configured to control at least somefunctions of one or more elements of the user interface, such as forexample, the speaker 24, the ringer 22, the microphone 26, the display28, and/or the like. The processor 20 and/or user interface circuitrycomprising the processor 20 may be configured to control one or morefunctions of one or more elements of the user interface through computerprogram instructions, for example, software and/or firmware, stored on amemory accessible to the processor 20, for example, volatile memory 40,non-volatile memory 42, and/or the like. The apparatus 10 may include abattery for powering various circuits related to the mobile terminal,for example, a circuit to provide mechanical vibration as a detectableoutput. The user input interface may comprise devices allowing theapparatus 20 to receive data, such as for example, a keypad 30 (whichcan be a virtual keyboard presented on display 28 or an externallycoupled keyboard) and/or other input devices.

Moreover, the apparatus 10 may include a short-range radio frequency(RF) transceiver and/or interrogator 64, so data may be shared withand/or obtained from electronic devices in accordance with RFtechniques. The apparatus 10 may include other short-range transceivers,such as for example an infrared (IR) transceiver 66, a Bluetooth (BT)transceiver 68 operating using Bluetooth wireless technology, a wirelessuniversal serial bus (USB) transceiver 70, and/or the like. TheBluetooth transceiver 68 may be capable of operating according to lowpower or ultra-low power Bluetooth technology, for example, Wibree,radio standards. In this regard, the apparatus 10 and, in particular,the short-range transceiver may be capable of transmitting data toand/or receiving data from electronic devices within a proximity of theapparatus, such as for example within 10 meters. The apparatus 10including the WiFi or wireless local area networking modem may also becapable of transmitting and/or receiving data from electronic devicesaccording to various wireless networking techniques, including 6LoWpan,Wi-Fi, Wi-Fi low power, WLAN techniques such as for example IEEE 802.11techniques, IEEE 802.15 techniques, IEEE 802.16 techniques, and/or thelike.

The apparatus 10 may comprise memory, such as for example, a subscriberidentity module (SIM) 38, a removable user identity module (R-UIM),and/or the like, which may store information elements related to amobile subscriber. In addition to the SIM, the apparatus 10 may includeother removable and/or fixed memory. The apparatus 10 may includevolatile memory 40 and/or non-volatile memory 42. For example, volatilememory 40 may include Random Access Memory (RAM) including dynamicand/or static RAM, on-chip or off-chip cache memory, and/or the like.Non-volatile memory 42, which may be embedded and/or removable, mayinclude, for example, read-only memory, flash memory, magnetic storagedevices, for example, hard disks, floppy disk drives, magnetic tape,optical disc drives and/or media, non-volatile random access memory(NVRAM), and/or the like. Like volatile memory 40, non-volatile memory42 may include a cache area for temporary storage of data. At least partof the volatile and/or non-volatile memory may be embedded in processor20. The memories may store one or more software programs, instructions,pieces of information, data, and/or the like which may be used by theapparatus for performing functions of the user equipment/mobileterminal. The memories may comprise an identifier, such as for examplean international mobile equipment identification (IMEI) code, capable ofuniquely identifying apparatus 10. The functions may include one or moreof the operations disclosed herein with respect to the user equipment,such as for example the functions disclosed at process 400. The memoriesmay comprise an identifier, such as for example, an international mobileequipment identification (IMEI) code, capable of uniquely identifyingapparatus 10. In the example embodiment, the processor 20 may beconfigured using computer code stored at memory 40 and/or 42 to provideone or more operations described with respect to process 400, FIG. 2,FIG. 3, and/or the like as disclosed herein.

Some of the embodiments disclosed herein may be implemented in software,hardware, application logic, or a combination of software, hardware, andapplication logic. The software, application logic, and/or hardware mayreside on memory 40, the control apparatus 20, or electronic components,for example. In some example embodiment, the application logic, softwareor an instruction set is maintained on any one of various conventionalcomputer-readable media. In the context of this document, a“computer-readable medium” may be any non-transitory media that cancontain, store, communicate, propagate or transport the instructions foruse by or in connection with an instruction execution system, apparatus,or device, such as for example a computer or data processor circuitry,with examples depicted at FIG. 5 and the like. A computer-readablemedium may comprise a non-transitory computer-readable storage mediumthat may be any media that can contain or store the instructions for useby or in connection with an instruction execution system, apparatus, ordevice, such as for example a computer. Furthermore, some of theembodiments disclosed herein include computer programs configured tocause methods as disclosed herein (see, for example, process 400 and/orthe like).

Without in any way limiting the scope, interpretation, or application ofthe claims appearing below, a technical effect of one or more of theexample embodiments disclosed herein is a simple serial communicationcan be established between USB-device and accessory without the need toimplement full power delivery (PD) communication. Moreover, without inany way limiting the scope, interpretation, or application of the claimsappearing below, another technical effect of one or more of the exampleembodiments disclosed herein is reduction in the need for extra pins inthe connector as unused CC-pins can be used for communications.

If desired, the different functions discussed herein may be performed ina different order and/or concurrently with each other. Furthermore, ifdesired, one or more of the above-described functions may be optional ormay be combined. Although various aspects of the invention are set outin the independent claims, other aspects of the invention comprise othercombinations of features from the described embodiments and/or thedependent claims with the features of the independent claims, and notsolely the combinations explicitly set out in the claims. It is alsonoted herein that while the above describes example embodiments, thesedescriptions should not be viewed in a limiting sense. Rather, there areseveral variations and modifications that may be made without departingfrom the scope of the present invention as defined in the appendedclaims. Other embodiments may be within the scope of the followingclaims. The term “based on” includes “based on at least.”

What is claimed:
 1. A method comprising: detecting, by a first deviceincluding a data interface, a current flow at a first communicationcontrol pin at the data interface; and assigning, by the first devicebased on the detection of the current flow at the first communicationcontrol pin, serial data communication circuitry to a secondcommunication control pin at the data interface to carry serial datacommunications to another device.
 2. The method of claim 1, wherein thedata interface comprises at least one of a universal serial busconnector and a universal serial bus receptacle.
 3. The method of claim1, wherein the first communication control pin and the secondcommunication control pin are coupled to at least pull-down resistor anda ground.
 4. The method of claim 3, wherein the first communicationcontrol pin is coupled to the other device including a pull-up resistorcausing the current flow when coupled.
 5. The method of claim 1, whereinthe first communication control pin is located at a first row of thedata interface, and wherein the second communication control pin islocated at a second row of the data interface.
 6. The method of claim 1,wherein the detecting further comprises identifying the firstcommunication control pin as actively carrying communication controlsignaling, and wherein the assigning further comprises selecting thesecond communication control pin that is not actively carryingcommunication control signaling to carry the serial data.
 7. The methodof claim 1, further comprising: detecting, by the first device, acurrent flow at the second communication control pin; and assigning, bythe first device based on the detection of the current flow at thesecond communication control pin, the serial data communicationcircuitry to the first communication control pin to carry serial datacommunications to the other device.
 8. An apparatus comprising: a datainterface including a first communication control pin and a secondcommunication control pin, the first communication control pin and asecond communication control pin coupled to a pull-down resistor;detection circuitry to detect a current flow at the first communicationcontrol pin; and control circuitry to assign, based on the detection ofthe current flow at the first communication control pin, serial datacommunication circuitry to the second communication control pin toenable serial data communications between the apparatus and anotherdevice.
 9. The apparatus of claim 8, wherein the data interfacecomprises at least one of a universal serial bus connector and auniversal serial bus receptacle.
 10. The apparatus of claim 8, whereinthe first communication control pin is coupled to the other deviceincluding a pull-up resistor causing the current flow when coupled. 11.The apparatus of claim 8, wherein the first communication control pin islocated at a first row of the data interface, and wherein the secondcommunication control pin is located at a second row of the datainterface.
 12. The apparatus of claim 8, wherein the detection circuitryidentifies the first communication control pin as actively carryingcommunication control signaling, and wherein the control circuitryselects the second communication control pin that is not activelycarrying communication control signaling to carry the serial data. 13.The apparatus of claim 8, wherein the detection circuitry is configuredto detect a current flow at the second communication control pin, andwherein the control circuitry is configured to assign, based on thedetection of current flow the second communication control pin, theserial data communication circuitry to the first communication controlpin at the data interface to carry serial data communications betweenthe apparatus and the other device.
 14. An apparatus comprising: a datainterface including a first communication control pin and a secondcommunication control pin, the first communication control pin coupledto a pull-up resistor and a source of power; detection circuitry todetect a current flow at the first communication control pin; and aserial data interface coupled the second communication control pin, theserial data interface allowed to send serial data via the secondcommunication control pin after the detected current flow at the firstcommunication control pin.
 15. The apparatus of claim 13, wherein thedata interface comprises at least one of a universal serial busconnector and a universal serial bus receptacle.
 16. The apparatus ofclaim 13, wherein the first communication control pin is coupled to theother device including a pull-down resistor causing the current flowwhen coupled.
 17. The apparatus of claim 13, wherein the firstcommunication control pin is located at a first row of the datainterface, and wherein the second communication control pin is locatedat a second row of the data interface.
 18. A method comprising:detecting, by a device including a data interface having a firstcommunication control pin and a second communication control pin, acurrent flow at the first communication control pin, the current flowcaused by at least a pull-up resistor and a source of power; andcommunicating, by the device when the current flow is detected at thefirst communications pin, serial data via the second communicationcontrol pin at the data interface.
 19. The method of claim 18, whereinthe data interface comprises at least one of a universal serial busconnector and a universal serial bus receptacle.
 20. The method of claim18, wherein the first communication control pin is coupled to the otherdevice including a pull-down resistor causing the current flow whencoupled.
 21. The method of claim 18, wherein the first communicationcontrol pin is located at a first row of the data interface, and whereinthe second communication control pin is located at a second row of thedata interface.
 22. A non-transitory computer-readable storage mediumincluding computer program code which when executed by at least oneprocessor circuitry causes operations comprising: detecting, by a firstdevice including a data interface, a current flow at a firstcommunication control pin at the data interface; and assigning, by thefirst device based on the detection of the current flow at the firstcommunication control pin, serial data communication circuitry to asecond communication control pin at the data interface to carry serialdata communications to another device.
 23. A non-transitorycomputer-readable storage medium including computer program code whichwhen executed by at least one processor circuitry causes operationscomprising: detecting, by a device including a data interface having afirst communication control pin and a second communication control pin,a current flow at the first communication control pin, the current flowcaused by at least a pull-up resistor and a source of power; andcommunicating, by the device when the current flow is detected at thefirst communications pin, serial data via the second communicationcontrol pin at the data interface.